package vip.sweet.biz.modular.product.params;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import lombok.Builder;
import lombok.Data;

import java.util.Date;

/**
 * @author ASUS
 * @Date 2025/10/5 18:02
 * @Descripition
 */
@Data
@Schema(description = "业务逻辑产品添加参数类")
@Builder
public class BizProductsAddParams {
    @Schema(description = "产品名称")
    @NotBlank(message = "产品名称不能为空")
    private String name;
    @Schema(description = "产品描述")
    @NotBlank(message = "产品描述不能为空")
    private String description;
    @Schema(description = "产品价格")
    private Double price;
    @Schema(description = "产品原价")
    private Double originalPrice;
    @Schema(description = "产品折扣")
    private Double discount;
    @Schema(description = "产品分类")
    private String category;
    @Schema(description = "产品子分类")
    private String subCategory;
    @Schema(description = "产品工艺")
    private String craftsmanship;
    @Schema(description = "产品评分")
    private Double rating;
    @Schema(description = "产品评价数")
    private Integer reviewCount;
    @Schema(description = "产品销量")
    private Integer salesCount;
    @Schema(description = "产品库存")
    private Integer stock;
    @Schema(description = "产品创建人")
    private String createdBy;
    @Schema(description = "是否新品")
    private Integer isNew;
    @Schema(description = "是否热卖")
    private Integer isHot;
    @Schema(description = "是否优惠")
    private Integer isDiscount;
    @Schema(description = "是否精选")
    private Integer isFeatured;
    @Schema(description = "产品重量")
    private Double weight;
    @Schema(description = "包装信息")
    private String packaging;
    @Schema(description = "产品保质期")
    private String shelfLife;
    @Schema(description = "产品产地")
    private String origin;
    @Schema(description = "产品详情")
    private String detailDescription;
}
